package com.tianqu.tms.dao;

import java.util.List;

import com.tianqu.tms.core.exception.TmsDaoException;
import com.tianqu.tms.dto.RentalInfoDto;
import com.tianqu.tms.entity.RentalLocationInfo;

public interface RentalLocationInfoDao {
	
	/**
	 * 租位编号存在check
	 * @return
	 * @throws TmsDaoException
	 */
	public boolean isExistLocationInfoBySerial(String serial)throws TmsDaoException;
	
	/**
	 * 插入租位信息
	 * @return
	 * @throws TmsDaoException
	 */
	public void insertLocationInfo(RentalInfoDto dto)throws TmsDaoException;
	
	/**
	 * 插入租位操作记录
	 * @return
	 * @throws TmsDaoException
	 */
	public void insertRentalUpdateHistroy(RentalInfoDto dto)throws TmsDaoException;
	
	/**
	 * 查询租位一览
	 * @return
	 * @throws TmsDaoException
	 */
	public List<RentalInfoDto> findRentalLocationList(String locationSerial,String[] rentalType,String[] rentalStatus,
			String acreageS,String acreageE,String carPortS,String carPortE,int rentalArea,
			String updateTimeS,String updateTimeE)throws TmsDaoException;
	
	/**
	 * 租位操作记录查询
	 * @return
	 * @throws TmsDaoException
	 */
	public List<RentalInfoDto> searchRentalLocationUpdateHistroy(String serial,String handleName,
			String handleType,String handleDateS,String handleDateE) throws TmsDaoException;
	
	/**
	 * 租位信息查询
	 * @return
	 * @throws TmsDaoException
	 */
	public RentalInfoDto searchLocationDetailById(long id) throws TmsDaoException;
	
	/**
	 * 租位信息查询
	 * @return
	 * @throws TmsDaoException
	 */
	public RentalInfoDto searchLocationDetailBySerial(String locationSerial)throws TmsDaoException;

	/**
	 * 租位状态check
	 * @return
	 * @throws TmsDaoException
	 */
	public int statusCheckById(long id)throws TmsDaoException;
	
	/**
	 * 删除租位信息
	 * @return
	 * @throws TmsDaoException
	 */
	public void deleteLocationById(long id)throws TmsDaoException;
	
	/**
	 * 更新租位信息
	 * @return
	 * @throws TmsDaoException
	 */
	public void updateLocationInfo(RentalLocationInfo rentalLocationInfo)throws TmsDaoException;
	
	/**
	 * 模糊查询租位编号列表
	 * @return
	 * @throws TmsDaoException
	 */
	public List<RentalInfoDto> findLocationSerialList(String serial)throws TmsDaoException;
	/**
	 * 租位信息查询
	 * @return
	 * @throws TmsDaoException
	 */
	public RentalInfoDto searchLocationInfoById(long id)throws TmsDaoException;
}
